<?php
require_once( "pb_proto_common.php" );
class User_ActionType extends PBEnum
{
  const REGISTER  = 1;
  const UPDATE  = 2;
  const LOGIN  = 3;
  const LOGOUT  = 4;
  const SOCIAL_LINK  = 5;
  const SOCIAL_UNLINK  = 6;
  const SOCIAL_LOGIN  = 7;
  const PROFILE_GET  = 8;
  const PROFILE_UPDATE  = 9;
  const USER_2_USER  = 10;
  const USER_2_CONTENT  = 11;
  const USER_ACTIVITY  = 12;
  const RECOVER_PASSWORD  = 13;
  const NEW_PASSWORD  = 14;
  const PASSWORD_CHANGE  = 15;
  const SHOW_FOLLOWER  = 16;
  const SHOW_FOLLOWING  = 17;
  const USER_ACTIVATE  = 18;
  const RESEND_ACTIVATION_CODE  = 19;
  const SESSION_CHECK  = 20;
  const SUGGESTED_USER_GET_  = 21;
  const WALLET_MANAGEMENT  = 22;
  const ENTERTAINMENT_AREA_MANAGEMENT  = 23;
  const PEOPLE_SAME_INTEREST  = 24;
  const SHOW_SUBSCRIPTION  = 25;
  const OPEN_GRAPH_ACTION_SHARE  = 26;
  const OGP_ACTION_SHARE_SETTINGS  = 27;
  const USER_INVITATION_STATS  = 28;
  const USER_TICKET_REQUEST  = 29;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			1 => "REGISTER",
			2 => "UPDATE",
			3 => "LOGIN",
			4 => "LOGOUT",
			5 => "SOCIAL_LINK",
			6 => "SOCIAL_UNLINK",
			7 => "SOCIAL_LOGIN",
			8 => "PROFILE_GET",
			9 => "PROFILE_UPDATE",
			10 => "USER_2_USER",
			11 => "USER_2_CONTENT",
			12 => "USER_ACTIVITY",
			13 => "RECOVER_PASSWORD",
			14 => "NEW_PASSWORD",
			15 => "PASSWORD_CHANGE",
			16 => "SHOW_FOLLOWER",
			17 => "SHOW_FOLLOWING",
			18 => "USER_ACTIVATE",
			19 => "RESEND_ACTIVATION_CODE",
			20 => "SESSION_CHECK",
			21 => "SUGGESTED_USER_GET_",
			22 => "WALLET_MANAGEMENT",
			23 => "ENTERTAINMENT_AREA_MANAGEMENT",
			24 => "PEOPLE_SAME_INTEREST",
			25 => "SHOW_SUBSCRIPTION",
			26 => "OPEN_GRAPH_ACTION_SHARE",
			27 => "OGP_ACTION_SHARE_SETTINGS",
			28 => "USER_INVITATION_STATS",
			29 => "USER_TICKET_REQUEST");
   }
}
class User extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["User"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["User"]["1"] = "uuid";
    self::$fields["User"]["2"] = "User_ActionType";
    $this->values["2"] = "";
    self::$fieldNames["User"]["2"] = "action";
    self::$fields["User"]["3"] = "PBBytes";
    $this->values["3"] = "";
    self::$fieldNames["User"]["3"] = "message";
    self::$fields["User"]["4"] = "PBBool";
    $this->values["4"] = "";
    self::$fieldNames["User"]["4"] = "undefined_action_type";
    self::$fields["User"]["5"] = "PBInt";
    $this->values["5"] = "";
    self::$fieldNames["User"]["5"] = "timestamp";
    self::$fields["User"]["6"] = "PBString";
    $this->values["6"] = "";
    self::$fieldNames["User"]["6"] = "signature";
    self::$fields["User"]["7"] = "ZipAlgorithm";
    $this->values["7"] = "";
    self::$fieldNames["User"]["7"] = "zip";
  }
  function uuid()
  {
    return $this->_get_value("1");
  }
  function set_uuid($value)
  {
    return $this->_set_value("1", $value);
  }
  function action()
  {
    return $this->_get_value("2");
  }
  function set_action($value)
  {
    return $this->_set_value("2", $value);
  }
  function action_string()
  {
    return $this->values["2"]->get_description();
  }
  function message()
  {
    return $this->_get_value("3");
  }
  function set_message($value)
  {
    return $this->_set_value("3", $value);
  }
  function undefined_action_type()
  {
    return $this->_get_value("4");
  }
  function set_undefined_action_type($value)
  {
    return $this->_set_value("4", $value);
  }
  function timestamp()
  {
    return $this->_get_value("5");
  }
  function set_timestamp($value)
  {
    return $this->_set_value("5", $value);
  }
  function signature()
  {
    return $this->_get_value("6");
  }
  function set_signature($value)
  {
    return $this->_set_value("6", $value);
  }
  function zip()
  {
    return $this->_get_value("7");
  }
  function set_zip($value)
  {
    return $this->_set_value("7", $value);
  }
  function zip_string()
  {
    return $this->values["7"]->get_description();
  }
}
class FacebookAuth extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FacebookAuth"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FacebookAuth"]["1"] = "access_token";
    self::$fields["FacebookAuth"]["2"] = "PBInt";
    $this->values["2"] = "";
    self::$fieldNames["FacebookAuth"]["2"] = "expires_in";
    self::$fields["FacebookAuth"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["FacebookAuth"]["3"] = "signed_request";
    self::$fields["FacebookAuth"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["FacebookAuth"]["4"] = "user_id";
    self::$fields["FacebookAuth"]["5"] = "InviteJoin";
    $this->values["5"] = "";
    self::$fieldNames["FacebookAuth"]["5"] = "invite_join";
  }
  function access_token()
  {
    return $this->_get_value("1");
  }
  function set_access_token($value)
  {
    return $this->_set_value("1", $value);
  }
  function expires_in()
  {
    return $this->_get_value("2");
  }
  function set_expires_in($value)
  {
    return $this->_set_value("2", $value);
  }
  function signed_request()
  {
    return $this->_get_value("3");
  }
  function set_signed_request($value)
  {
    return $this->_set_value("3", $value);
  }
  function user_id()
  {
    return $this->_get_value("4");
  }
  function set_user_id($value)
  {
    return $this->_set_value("4", $value);
  }
  function invite_join()
  {
    return $this->_get_value("5");
  }
  function set_invite_join($value)
  {
    return $this->_set_value("5", $value);
  }
}
class SocialChannel_ChannelType extends PBEnum
{
  const FACEBOOK  = 1;
  const GOOGLE  = 2;
  const ZINGME  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			1 => "FACEBOOK",
			2 => "GOOGLE",
			3 => "ZINGME");
   }
}
class SocialChannel extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SocialChannel"]["1"] = "SocialChannel_ChannelType";
    $this->values["1"] = "";
    self::$fieldNames["SocialChannel"]["1"] = "channel_type";
    self::$fields["SocialChannel"]["2"] = "PBBytes";
    $this->values["2"] = "";
    self::$fieldNames["SocialChannel"]["2"] = "channel_auth";
  }
  function channel_type()
  {
    return $this->_get_value("1");
  }
  function set_channel_type($value)
  {
    return $this->_set_value("1", $value);
  }
  function channel_type_string()
  {
    return $this->values["1"]->get_description();
  }
  function channel_auth()
  {
    return $this->_get_value("2");
  }
  function set_channel_auth($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SocialChannelUnlinkRequest_ChannelType extends PBEnum
{
  const FACEBOOK  = 1;
  const GOOGLE  = 2;
  const ZINGME  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			1 => "FACEBOOK",
			2 => "GOOGLE",
			3 => "ZINGME");
   }
}
class SocialChannelUnlinkRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SocialChannelUnlinkRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["SocialChannelUnlinkRequest"]["1"] = "uid";
    self::$fields["SocialChannelUnlinkRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SocialChannelUnlinkRequest"]["2"] = "session_key";
    self::$fields["SocialChannelUnlinkRequest"]["3"] = "SocialChannelUnlinkRequest_ChannelType";
    $this->values["3"] = "";
    self::$fieldNames["SocialChannelUnlinkRequest"]["3"] = "channel";
    self::$fields["SocialChannelUnlinkRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["SocialChannelUnlinkRequest"]["4"] = "channel_uid";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function channel()
  {
    return $this->_get_value("3");
  }
  function set_channel($value)
  {
    return $this->_set_value("3", $value);
  }
  function channel_string()
  {
    return $this->values["3"]->get_description();
  }
  function channel_uid()
  {
    return $this->_get_value("4");
  }
  function set_channel_uid($value)
  {
    return $this->_set_value("4", $value);
  }
}
class SocialChannelUnLinkReply_ErrorType extends PBEnum
{
  const SUCCESS  = 00;
  const FAIL  = 10;
  const FAIL_SYS  = 11;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			00 => "SUCCESS",
			10 => "FAIL",
			11 => "FAIL_SYS");
   }
}
class SocialChannelUnLinkReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SocialChannelUnLinkReply"]["1"] = "SocialChannelUnLinkReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SocialChannelUnLinkReply"]["1"] = "error_no";
    self::$fields["SocialChannelUnLinkReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SocialChannelUnLinkReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class LoginMethod extends PBEnum
{
  const EMAIL  = 0;
  const USERNAME  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "EMAIL",
			1 => "USERNAME");
   }
}
class RegisterRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["RegisterRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["RegisterRequest"]["1"] = "full_name";
    self::$fields["RegisterRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["RegisterRequest"]["2"] = "email";
    self::$fields["RegisterRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["RegisterRequest"]["3"] = "password";
    self::$fields["RegisterRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["RegisterRequest"]["4"] = "profile_picture_url";
    self::$fields["RegisterRequest"]["5"] = "InviteJoin";
    $this->values["5"] = "";
    self::$fieldNames["RegisterRequest"]["5"] = "invite_join";
    self::$fields["RegisterRequest"]["6"] = "LoginMethod";
    $this->values["6"] = "";
    self::$fieldNames["RegisterRequest"]["6"] = "register_method";
  }
  function full_name()
  {
    return $this->_get_value("1");
  }
  function set_full_name($value)
  {
    return $this->_set_value("1", $value);
  }
  function email()
  {
    return $this->_get_value("2");
  }
  function set_email($value)
  {
    return $this->_set_value("2", $value);
  }
  function password()
  {
    return $this->_get_value("3");
  }
  function set_password($value)
  {
    return $this->_set_value("3", $value);
  }
  function profile_picture_url()
  {
    return $this->_get_value("4");
  }
  function set_profile_picture_url($value)
  {
    return $this->_set_value("4", $value);
  }
  function invite_join()
  {
    return $this->_get_value("5");
  }
  function set_invite_join($value)
  {
    return $this->_set_value("5", $value);
  }
  function register_method()
  {
    return $this->_get_value("6");
  }
  function set_register_method($value)
  {
    return $this->_set_value("6", $value);
  }
  function register_method_string()
  {
    return $this->values["6"]->get_description();
  }
}
class RegisterReply_ErrorType extends PBEnum
{
  const SUCCESS  = 00;
  const FAIL  = 10;
  const FAIL_SYS  = 11;
  const USERNAME_INV  = 20;
  const USERNAME_INV_CHARS  = 21;
  const USERNAME_INV_LENGTH  = 22;
  const PASSWORD_INV  = 30;
  const PASSWORD_INV_CHARS  = 31;
  const PASSWORD_INV_LENGTH  = 32;
  const EMAIL_INV  = 40;
  const EMAIL_INV_CHARS  = 41;
  const EMAIL_INV_LENGTH  = 42;
  const MOBILE_INV  = 50;
  const MOBILE_INV_CHARS  = 51;
  const MOBILE_INV_LENGTH  = 52;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			00 => "SUCCESS",
			10 => "FAIL",
			11 => "FAIL_SYS",
			20 => "USERNAME_INV",
			21 => "USERNAME_INV_CHARS",
			22 => "USERNAME_INV_LENGTH",
			30 => "PASSWORD_INV",
			31 => "PASSWORD_INV_CHARS",
			32 => "PASSWORD_INV_LENGTH",
			40 => "EMAIL_INV",
			41 => "EMAIL_INV_CHARS",
			42 => "EMAIL_INV_LENGTH",
			50 => "MOBILE_INV",
			51 => "MOBILE_INV_CHARS",
			52 => "MOBILE_INV_LENGTH");
   }
}
class RegisterReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["RegisterReply"]["1"] = "RegisterReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["RegisterReply"]["1"] = "error_no";
    self::$fields["RegisterReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["RegisterReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class ProfileUpdateRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ProfileUpdateRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["ProfileUpdateRequest"]["1"] = "session_key";
    self::$fields["ProfileUpdateRequest"]["2"] = "Profile";
    $this->values["2"] = "";
    self::$fieldNames["ProfileUpdateRequest"]["2"] = "profile";
  }
  function session_key()
  {
    return $this->_get_value("1");
  }
  function set_session_key($value)
  {
    return $this->_set_value("1", $value);
  }
  function profile()
  {
    return $this->_get_value("2");
  }
  function set_profile($value)
  {
    return $this->_set_value("2", $value);
  }
}
class ProfileUpdateReply_ErrorType extends PBEnum
{
  const SUCCESS  = 00;
  const FAIL  = 10;
  const FAIL_SYS  = 11;
  const FAIL_AUTH  = 12;
  const USERNAME_INV  = 20;
  const USERNAME_INV_CHARS  = 21;
  const USERNAME_INV_LENGTH  = 22;
  const PASSWORD_INV  = 30;
  const PASSWORD_INV_CHARS  = 31;
  const PASSWORD_INV_LENGTH  = 32;
  const EMAIL_INV  = 40;
  const EMAIL_INV_CHARS  = 41;
  const EMAIL_INV_LENGTH  = 42;
  const MOBILE_INV  = 50;
  const MOBILE_INV_CHARS  = 51;
  const MOBILE_INV_LENGTH  = 52;
  const FULLNAME_INV  = 60;
  const FULLNAME_INV_CHARS  = 61;
  const FULLNAME_INV_LENGTH  = 62;
  const BIRTHDAY_INV  = 70;
  const BIRTHDAY_INV_CHARS  = 71;
  const BIRTHDAY_INV_LENGTH  = 72;
  const GENDER_INV  = 80;
  const GENDER_INV_CHARS  = 81;
  const GENDER_INV_LENGTH  = 82;
  const ADDRESS_INV  = 83;
  const ADDRESS_INV_CHARS  = 84;
  const ADDRESS_INV_LENGTH  = 85;
  const AVATAR_INV  = 86;
  const AVATAR_INV_CHARS  = 87;
  const AVATAR_INV_LENGTH  = 88;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			00 => "SUCCESS",
			10 => "FAIL",
			11 => "FAIL_SYS",
			12 => "FAIL_AUTH",
			20 => "USERNAME_INV",
			21 => "USERNAME_INV_CHARS",
			22 => "USERNAME_INV_LENGTH",
			30 => "PASSWORD_INV",
			31 => "PASSWORD_INV_CHARS",
			32 => "PASSWORD_INV_LENGTH",
			40 => "EMAIL_INV",
			41 => "EMAIL_INV_CHARS",
			42 => "EMAIL_INV_LENGTH",
			50 => "MOBILE_INV",
			51 => "MOBILE_INV_CHARS",
			52 => "MOBILE_INV_LENGTH",
			60 => "FULLNAME_INV",
			61 => "FULLNAME_INV_CHARS",
			62 => "FULLNAME_INV_LENGTH",
			70 => "BIRTHDAY_INV",
			71 => "BIRTHDAY_INV_CHARS",
			72 => "BIRTHDAY_INV_LENGTH",
			80 => "GENDER_INV",
			81 => "GENDER_INV_CHARS",
			82 => "GENDER_INV_LENGTH",
			83 => "ADDRESS_INV",
			84 => "ADDRESS_INV_CHARS",
			85 => "ADDRESS_INV_LENGTH",
			86 => "AVATAR_INV",
			87 => "AVATAR_INV_CHARS",
			88 => "AVATAR_INV_LENGTH");
   }
}
class ProfileUpdateReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ProfileUpdateReply"]["1"] = "ProfileUpdateReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["ProfileUpdateReply"]["1"] = "error_no";
    self::$fields["ProfileUpdateReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["ProfileUpdateReply"]["2"] = "error_msg";
    self::$fields["ProfileUpdateReply"]["3"] = "Profile";
    $this->values["3"] = "";
    self::$fieldNames["ProfileUpdateReply"]["3"] = "profile";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function profile()
  {
    return $this->_get_value("3");
  }
  function set_profile($value)
  {
    return $this->_set_value("3", $value);
  }
}
class LoginRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["LoginRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["LoginRequest"]["1"] = "email";
    self::$fields["LoginRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["LoginRequest"]["2"] = "password";
    self::$fields["LoginRequest"]["3"] = "LoginMethod";
    $this->values["3"] = "";
    self::$fieldNames["LoginRequest"]["3"] = "login_method";
  }
  function email()
  {
    return $this->_get_value("1");
  }
  function set_email($value)
  {
    return $this->_set_value("1", $value);
  }
  function password()
  {
    return $this->_get_value("2");
  }
  function set_password($value)
  {
    return $this->_set_value("2", $value);
  }
  function login_method()
  {
    return $this->_get_value("3");
  }
  function set_login_method($value)
  {
    return $this->_set_value("3", $value);
  }
  function login_method_string()
  {
    return $this->values["3"]->get_description();
  }
}
class LoginReply_ErrorType extends PBEnum
{
  const SUCCESS  = 00;
  const FAIL  = 10;
  const FAIL_SYS  = 11;
  const USERNAME_INV  = 20;
  const USERNAME_INV_CHARS  = 21;
  const USERNAME_INV_LENGTH  = 22;
  const PASSWORD_INV  = 30;
  const PASSWORD_INV_CHARS  = 31;
  const PASSWORD_INV_LENGTH  = 32;
  const USER_INACTIVE  = 33;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			00 => "SUCCESS",
			10 => "FAIL",
			11 => "FAIL_SYS",
			20 => "USERNAME_INV",
			21 => "USERNAME_INV_CHARS",
			22 => "USERNAME_INV_LENGTH",
			30 => "PASSWORD_INV",
			31 => "PASSWORD_INV_CHARS",
			32 => "PASSWORD_INV_LENGTH",
			33 => "USER_INACTIVE");
   }
}
class LoginReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["LoginReply"]["1"] = "LoginReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["LoginReply"]["1"] = "error_no";
    self::$fields["LoginReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["LoginReply"]["2"] = "error_msg";
    self::$fields["LoginReply"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["LoginReply"]["3"] = "session_key";
    self::$fields["LoginReply"]["4"] = "Profile";
    $this->values["4"] = "";
    self::$fieldNames["LoginReply"]["4"] = "profile";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function session_key()
  {
    return $this->_get_value("3");
  }
  function set_session_key($value)
  {
    return $this->_set_value("3", $value);
  }
  function profile()
  {
    return $this->_get_value("4");
  }
  function set_profile($value)
  {
    return $this->_set_value("4", $value);
  }
}
class LogoutRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["LogoutRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["LogoutRequest"]["1"] = "uid";
    self::$fields["LogoutRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["LogoutRequest"]["2"] = "session_key";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
}
class LogoutReply_ErrorType extends PBEnum
{
  const SUCCESS  = 00;
  const FAIL  = 10;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			00 => "SUCCESS",
			10 => "FAIL");
   }
}
class LogoutReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["LogoutReply"]["1"] = "LogoutReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["LogoutReply"]["1"] = "error_no";
    self::$fields["LogoutReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["LogoutReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SocialLoginRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SocialLoginRequest"]["1"] = "SocialChannel";
    $this->values["1"] = "";
    self::$fieldNames["SocialLoginRequest"]["1"] = "channel";
    self::$fields["SocialLoginRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SocialLoginRequest"]["2"] = "email";
  }
  function channel()
  {
    return $this->_get_value("1");
  }
  function set_channel($value)
  {
    return $this->_set_value("1", $value);
  }
  function email()
  {
    return $this->_get_value("2");
  }
  function set_email($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SocialLoginReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class SocialLoginReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SocialLoginReply"]["1"] = "SocialLoginReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SocialLoginReply"]["1"] = "error_no";
    self::$fields["SocialLoginReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SocialLoginReply"]["2"] = "error_msg";
    self::$fields["SocialLoginReply"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["SocialLoginReply"]["3"] = "session_key";
    self::$fields["SocialLoginReply"]["4"] = "Profile";
    $this->values["4"] = "";
    self::$fieldNames["SocialLoginReply"]["4"] = "profile";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function session_key()
  {
    return $this->_get_value("3");
  }
  function set_session_key($value)
  {
    return $this->_set_value("3", $value);
  }
  function profile()
  {
    return $this->_get_value("4");
  }
  function set_profile($value)
  {
    return $this->_set_value("4", $value);
  }
}
class ProfileType extends PBEnum
{
  const PUBLIC_PROFILE  = 0;
  const PRIVATE_PROFILE  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "PUBLIC_PROFILE",
			1 => "PRIVATE_PROFILE");
   }
}
class ProfileGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ProfileGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["ProfileGetRequest"]["1"] = "uid";
    self::$fields["ProfileGetRequest"]["2"] = "ProfileType";
    $this->values["2"] = "";
    self::$fieldNames["ProfileGetRequest"]["2"] = "profile_type";
    self::$fields["ProfileGetRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["ProfileGetRequest"]["3"] = "session_key";
    self::$fields["ProfileGetRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["ProfileGetRequest"]["4"] = "username";
    self::$fields["ProfileGetRequest"]["5"] = "PBInt";
    $this->values["5"] = "";
    $this->values["5"] = new PBInt();
    $this->values["5"]->value = 3;
    self::$fieldNames["ProfileGetRequest"]["5"] = "sample_followers";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function profile_type()
  {
    return $this->_get_value("2");
  }
  function set_profile_type($value)
  {
    return $this->_set_value("2", $value);
  }
  function profile_type_string()
  {
    return $this->values["2"]->get_description();
  }
  function session_key()
  {
    return $this->_get_value("3");
  }
  function set_session_key($value)
  {
    return $this->_set_value("3", $value);
  }
  function username()
  {
    return $this->_get_value("4");
  }
  function set_username($value)
  {
    return $this->_set_value("4", $value);
  }
  function sample_followers()
  {
    return $this->_get_value("5");
  }
  function set_sample_followers($value)
  {
    return $this->_set_value("5", $value);
  }
}
class ProfileGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class ProfileGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ProfileGetReply"]["1"] = "ProfileGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["ProfileGetReply"]["1"] = "error_no";
    self::$fields["ProfileGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["ProfileGetReply"]["2"] = "error_msg";
    self::$fields["ProfileGetReply"]["3"] = "ProfileType";
    $this->values["3"] = "";
    self::$fieldNames["ProfileGetReply"]["3"] = "profile_type";
    self::$fields["ProfileGetReply"]["4"] = "Profile";
    $this->values["4"] = "";
    self::$fieldNames["ProfileGetReply"]["4"] = "profile";
    self::$fields["ProfileGetReply"]["10"] = "PBBool";
    $this->values["10"] = "";
    self::$fieldNames["ProfileGetReply"]["10"] = "followed";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function profile_type()
  {
    return $this->_get_value("3");
  }
  function set_profile_type($value)
  {
    return $this->_set_value("3", $value);
  }
  function profile_type_string()
  {
    return $this->values["3"]->get_description();
  }
  function profile()
  {
    return $this->_get_value("4");
  }
  function set_profile($value)
  {
    return $this->_set_value("4", $value);
  }
  function followed()
  {
    return $this->_get_value("10");
  }
  function set_followed($value)
  {
    return $this->_set_value("10", $value);
  }
}
class SessionInformationUpdateRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SessionInformationUpdateRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["SessionInformationUpdateRequest"]["1"] = "session_key";
    self::$fields["SessionInformationUpdateRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SessionInformationUpdateRequest"]["2"] = "uid";
    self::$fields["SessionInformationUpdateRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["SessionInformationUpdateRequest"]["3"] = "device_brand";
    self::$fields["SessionInformationUpdateRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["SessionInformationUpdateRequest"]["4"] = "device_model";
    self::$fields["SessionInformationUpdateRequest"]["5"] = "PBString";
    $this->values["5"] = "";
    self::$fieldNames["SessionInformationUpdateRequest"]["5"] = "device_os";
  }
  function session_key()
  {
    return $this->_get_value("1");
  }
  function set_session_key($value)
  {
    return $this->_set_value("1", $value);
  }
  function uid()
  {
    return $this->_get_value("2");
  }
  function set_uid($value)
  {
    return $this->_set_value("2", $value);
  }
  function device_brand()
  {
    return $this->_get_value("3");
  }
  function set_device_brand($value)
  {
    return $this->_set_value("3", $value);
  }
  function device_model()
  {
    return $this->_get_value("4");
  }
  function set_device_model($value)
  {
    return $this->_set_value("4", $value);
  }
  function device_os()
  {
    return $this->_get_value("5");
  }
  function set_device_os($value)
  {
    return $this->_set_value("5", $value);
  }
}
class SessionInformationUpdateReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class SessionInformationUpdateReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SessionInformationUpdateReply"]["1"] = "SessionInformationUpdateReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SessionInformationUpdateReply"]["1"] = "error_no";
    self::$fields["SessionInformationUpdateReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SessionInformationUpdateReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class UserActivateRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserActivateRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["UserActivateRequest"]["1"] = "activation_code";
  }
  function activation_code()
  {
    return $this->_get_value("1");
  }
  function set_activation_code($value)
  {
    return $this->_set_value("1", $value);
  }
}
class UserActivateReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CODE_INV  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CODE_INV");
   }
}
class UserActivateReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserActivateReply"]["1"] = "UserActivateReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["UserActivateReply"]["1"] = "error_no";
    self::$fields["UserActivateReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserActivateReply"]["2"] = "error_msg";
    self::$fields["UserActivateReply"]["3"] = "Profile";
    $this->values["3"] = "";
    self::$fieldNames["UserActivateReply"]["3"] = "profile";
    self::$fields["UserActivateReply"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["UserActivateReply"]["4"] = "session_key";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function profile()
  {
    return $this->_get_value("3");
  }
  function set_profile($value)
  {
    return $this->_set_value("3", $value);
  }
  function session_key()
  {
    return $this->_get_value("4");
  }
  function set_session_key($value)
  {
    return $this->_set_value("4", $value);
  }
}
class User2UserRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["User2UserRequest"]["1"] = "User2UserActionType";
    $this->values["1"] = "";
    self::$fieldNames["User2UserRequest"]["1"] = "action_type";
    self::$fields["User2UserRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["User2UserRequest"]["2"] = "source_uid";
    self::$fields["User2UserRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["User2UserRequest"]["3"] = "destination_username";
    self::$fields["User2UserRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["User2UserRequest"]["4"] = "session_key";
  }
  function action_type()
  {
    return $this->_get_value("1");
  }
  function set_action_type($value)
  {
    return $this->_set_value("1", $value);
  }
  function action_type_string()
  {
    return $this->values["1"]->get_description();
  }
  function source_uid()
  {
    return $this->_get_value("2");
  }
  function set_source_uid($value)
  {
    return $this->_set_value("2", $value);
  }
  function destination_username()
  {
    return $this->_get_value("3");
  }
  function set_destination_username($value)
  {
    return $this->_set_value("3", $value);
  }
  function session_key()
  {
    return $this->_get_value("4");
  }
  function set_session_key($value)
  {
    return $this->_set_value("4", $value);
  }
}
class User2UserReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class User2UserReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["User2UserReply"]["1"] = "User2UserReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["User2UserReply"]["1"] = "error_no";
    self::$fields["User2UserReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["User2UserReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class User2ContentRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["User2ContentRequest"]["1"] = "User2ContentActionType";
    $this->values["1"] = "";
    self::$fieldNames["User2ContentRequest"]["1"] = "action_type";
    self::$fields["User2ContentRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["User2ContentRequest"]["2"] = "uid";
    self::$fields["User2ContentRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["User2ContentRequest"]["3"] = "content_id";
    self::$fields["User2ContentRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["User2ContentRequest"]["4"] = "session_key";
    self::$fields["User2ContentRequest"]["5"] = "PBInt";
    $this->values["5"] = "";
    self::$fieldNames["User2ContentRequest"]["5"] = "rate";
    self::$fields["User2ContentRequest"]["6"] = "TextMessage";
    $this->values["6"] = "";
    self::$fieldNames["User2ContentRequest"]["6"] = "comment_message";
    self::$fields["User2ContentRequest"]["7"] = "TextMessage";
    $this->values["7"] = "";
    self::$fieldNames["User2ContentRequest"]["7"] = "share_message";
    self::$fields["User2ContentRequest"]["8"] = "SocialChannelShare";
    $this->values["8"] = array();
    self::$fieldNames["User2ContentRequest"]["8"] = "share";
    self::$fields["User2ContentRequest"]["9"] = "PBString";
    $this->values["9"] = "";
    self::$fieldNames["User2ContentRequest"]["9"] = "target_token_id";
    self::$fields["User2ContentRequest"]["10"] = "PBString";
    $this->values["10"] = "";
    self::$fieldNames["User2ContentRequest"]["10"] = "via_uid";
  }
  function action_type()
  {
    return $this->_get_value("1");
  }
  function set_action_type($value)
  {
    return $this->_set_value("1", $value);
  }
  function action_type_string()
  {
    return $this->values["1"]->get_description();
  }
  function uid()
  {
    return $this->_get_value("2");
  }
  function set_uid($value)
  {
    return $this->_set_value("2", $value);
  }
  function content_id()
  {
    return $this->_get_value("3");
  }
  function set_content_id($value)
  {
    return $this->_set_value("3", $value);
  }
  function session_key()
  {
    return $this->_get_value("4");
  }
  function set_session_key($value)
  {
    return $this->_set_value("4", $value);
  }
  function rate()
  {
    return $this->_get_value("5");
  }
  function set_rate($value)
  {
    return $this->_set_value("5", $value);
  }
  function comment_message()
  {
    return $this->_get_value("6");
  }
  function set_comment_message($value)
  {
    return $this->_set_value("6", $value);
  }
  function share_message()
  {
    return $this->_get_value("7");
  }
  function set_share_message($value)
  {
    return $this->_set_value("7", $value);
  }
  function share($offset)
  {
    return $this->_get_arr_value("8", $offset);
  }
  function add_share()
  {
    return $this->_add_arr_value("8");
  }
  function set_share($index, $value)
  {
    $this->_set_arr_value("8", $index, $value);
  }
  function set_all_shares($values)
  {
    return $this->_set_arr_values("8", $values);
  }
  function remove_last_share()
  {
    $this->_remove_last_arr_value("8");
  }
  function shares_size()
  {
    return $this->_get_arr_size("8");
  }
  function get_shares()
  {
    return $this->_get_value("8");
  }
  function target_token_id()
  {
    return $this->_get_value("9");
  }
  function set_target_token_id($value)
  {
    return $this->_set_value("9", $value);
  }
  function via_uid()
  {
    return $this->_get_value("10");
  }
  function set_via_uid($value)
  {
    return $this->_set_value("10", $value);
  }
}
class User2ContentReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class User2ContentReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["User2ContentReply"]["1"] = "User2ContentReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["User2ContentReply"]["1"] = "error_no";
    self::$fields["User2ContentReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["User2ContentReply"]["2"] = "error_msg";
    self::$fields["User2ContentReply"]["3"] = "PBInt";
    $this->values["3"] = array();
    self::$fieldNames["User2ContentReply"]["3"] = "num_update";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function num_update($offset)
  {
    $v = $this->_get_arr_value("3", $offset);
    return $v->get_value();
  }
  function append_num_update($value)
  {
    $v = $this->_add_arr_value("3");
    $v->set_value($value);
  }
  function set_num_update($index, $value)
  {
    $v = new self::$fields["User2ContentReply"]["3"]();
    $v->set_value($value);
    $this->_set_arr_value("3", $index, $v);
  }
  function remove_last_num_update()
  {
    $this->_remove_last_arr_value("3");
  }
  function num_updates_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_num_updates()
  {
    return $this->_get_value("3");
  }
}
class UserActivityGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserActivityGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["UserActivityGetRequest"]["1"] = "target_uid";
    self::$fields["UserActivityGetRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserActivityGetRequest"]["2"] = "uid";
    self::$fields["UserActivityGetRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["UserActivityGetRequest"]["3"] = "session_key";
    self::$fields["UserActivityGetRequest"]["4"] = "UserActivityType";
    $this->values["4"] = array();
    self::$fieldNames["UserActivityGetRequest"]["4"] = "activity_type";
    self::$fields["UserActivityGetRequest"]["5"] = "PBInt";
    $this->values["5"] = "";
    self::$fieldNames["UserActivityGetRequest"]["5"] = "after_timestamp";
    self::$fields["UserActivityGetRequest"]["6"] = "PBInt";
    $this->values["6"] = "";
    self::$fieldNames["UserActivityGetRequest"]["6"] = "before_timestamp";
    self::$fields["UserActivityGetRequest"]["7"] = "PBInt";
    $this->values["7"] = "";
    self::$fieldNames["UserActivityGetRequest"]["7"] = "num_activities";
  }
  function target_uid()
  {
    return $this->_get_value("1");
  }
  function set_target_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function uid()
  {
    return $this->_get_value("2");
  }
  function set_uid($value)
  {
    return $this->_set_value("2", $value);
  }
  function session_key()
  {
    return $this->_get_value("3");
  }
  function set_session_key($value)
  {
    return $this->_set_value("3", $value);
  }
  function activity_type($offset)
  {
    $v = $this->_get_arr_value("4", $offset);
    return $v->get_value();
  }
  function append_activity_type($value)
  {
    $v = $this->_add_arr_value("4");
    $v->set_value($value);
  }
  function set_activity_type($index, $value)
  {
    $v = new self::$fields["UserActivityGetRequest"]["4"]();
    $v->set_value($value);
    $this->_set_arr_value("4", $index, $v);
  }
  function remove_last_activity_type()
  {
    $this->_remove_last_arr_value("4");
  }
  function activity_types_size()
  {
    return $this->_get_arr_size("4");
  }
  function get_activity_types()
  {
    return $this->_get_value("4");
  }
  function after_timestamp()
  {
    return $this->_get_value("5");
  }
  function set_after_timestamp($value)
  {
    return $this->_set_value("5", $value);
  }
  function before_timestamp()
  {
    return $this->_get_value("6");
  }
  function set_before_timestamp($value)
  {
    return $this->_set_value("6", $value);
  }
  function num_activities()
  {
    return $this->_get_value("7");
  }
  function set_num_activities($value)
  {
    return $this->_set_value("7", $value);
  }
}
class UserActivityGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH");
   }
}
class UserActivityGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserActivityGetReply"]["1"] = "UserActivityGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["UserActivityGetReply"]["1"] = "error_no";
    self::$fields["UserActivityGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserActivityGetReply"]["2"] = "error_msg";
    self::$fields["UserActivityGetReply"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["UserActivityGetReply"]["3"] = "num_activities";
    self::$fields["UserActivityGetReply"]["4"] = "UserActivity";
    $this->values["4"] = array();
    self::$fieldNames["UserActivityGetReply"]["4"] = "activity";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function num_activities()
  {
    return $this->_get_value("3");
  }
  function set_num_activities($value)
  {
    return $this->_set_value("3", $value);
  }
  function activity($offset)
  {
    return $this->_get_arr_value("4", $offset);
  }
  function add_activity()
  {
    return $this->_add_arr_value("4");
  }
  function set_activity($index, $value)
  {
    $this->_set_arr_value("4", $index, $value);
  }
  function set_all_activitys($values)
  {
    return $this->_set_arr_values("4", $values);
  }
  function remove_last_activity()
  {
    $this->_remove_last_arr_value("4");
  }
  function activitys_size()
  {
    return $this->_get_arr_size("4");
  }
  function get_activitys()
  {
    return $this->_get_value("4");
  }
}
class PasswordRecoveryLinkGenerateRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordRecoveryLinkGenerateRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["PasswordRecoveryLinkGenerateRequest"]["1"] = "email";
    self::$fields["PasswordRecoveryLinkGenerateRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordRecoveryLinkGenerateRequest"]["2"] = "base_recovery_url";
  }
  function email()
  {
    return $this->_get_value("1");
  }
  function set_email($value)
  {
    return $this->_set_value("1", $value);
  }
  function base_recovery_url()
  {
    return $this->_get_value("2");
  }
  function set_base_recovery_url($value)
  {
    return $this->_set_value("2", $value);
  }
}
class PasswordRecoveryLinkGenerateReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class PasswordRecoveryLinkGenerateReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordRecoveryLinkGenerateReply"]["1"] = "PasswordRecoveryLinkGenerateReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["PasswordRecoveryLinkGenerateReply"]["1"] = "error_no";
    self::$fields["PasswordRecoveryLinkGenerateReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordRecoveryLinkGenerateReply"]["2"] = "error_msg";
    self::$fields["PasswordRecoveryLinkGenerateReply"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["PasswordRecoveryLinkGenerateReply"]["4"] = "expires_in";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function expires_in()
  {
    return $this->_get_value("4");
  }
  function set_expires_in($value)
  {
    return $this->_set_value("4", $value);
  }
}
class PasswordRecoverRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordRecoverRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["PasswordRecoverRequest"]["1"] = "ticket";
    self::$fields["PasswordRecoverRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordRecoverRequest"]["2"] = "new_password";
  }
  function ticket()
  {
    return $this->_get_value("1");
  }
  function set_ticket($value)
  {
    return $this->_set_value("1", $value);
  }
  function new_password()
  {
    return $this->_get_value("2");
  }
  function set_new_password($value)
  {
    return $this->_set_value("2", $value);
  }
}
class PasswordRecoverReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL");
   }
}
class PasswordRecoverReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordRecoverReply"]["1"] = "PasswordRecoverReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["PasswordRecoverReply"]["1"] = "error_no";
    self::$fields["PasswordRecoverReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordRecoverReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class PasswordChangeRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordChangeRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["PasswordChangeRequest"]["1"] = "uid";
    self::$fields["PasswordChangeRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordChangeRequest"]["2"] = "session_key";
    self::$fields["PasswordChangeRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["PasswordChangeRequest"]["3"] = "old_password";
    self::$fields["PasswordChangeRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["PasswordChangeRequest"]["4"] = "new_password";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function old_password()
  {
    return $this->_get_value("3");
  }
  function set_old_password($value)
  {
    return $this->_set_value("3", $value);
  }
  function new_password()
  {
    return $this->_get_value("4");
  }
  function set_new_password($value)
  {
    return $this->_set_value("4", $value);
  }
}
class PasswordChangeReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;
  const CHANNEL_SYS_FAIL  = 5;
  const INVALID_OLD_PASSWORD  = 6;
  const INVALID_SESSION_KEY  = 7;
  const INVALID_NEW_PASSWORD  = 8;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH",
			5 => "CHANNEL_SYS_FAIL",
			6 => "INVALID_OLD_PASSWORD",
			7 => "INVALID_SESSION_KEY",
			8 => "INVALID_NEW_PASSWORD");
   }
}
class PasswordChangeReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PasswordChangeReply"]["1"] = "PasswordChangeReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["PasswordChangeReply"]["1"] = "error_no";
    self::$fields["PasswordChangeReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PasswordChangeReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class FollowerGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FollowerGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FollowerGetRequest"]["1"] = "target_uid";
    self::$fields["FollowerGetRequest"]["2"] = "PBInt";
    $this->values["2"] = "";
    self::$fieldNames["FollowerGetRequest"]["2"] = "before_timestamp";
    self::$fields["FollowerGetRequest"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["FollowerGetRequest"]["3"] = "num";
    self::$fields["FollowerGetRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["FollowerGetRequest"]["4"] = "uid";
  }
  function target_uid()
  {
    return $this->_get_value("1");
  }
  function set_target_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function before_timestamp()
  {
    return $this->_get_value("2");
  }
  function set_before_timestamp($value)
  {
    return $this->_set_value("2", $value);
  }
  function num()
  {
    return $this->_get_value("3");
  }
  function set_num($value)
  {
    return $this->_set_value("3", $value);
  }
  function uid()
  {
    return $this->_get_value("4");
  }
  function set_uid($value)
  {
    return $this->_set_value("4", $value);
  }
}
class Followers extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["Followers"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["Followers"]["1"] = "uid";
    self::$fields["Followers"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["Followers"]["2"] = "username";
    self::$fields["Followers"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["Followers"]["3"] = "user_fullname";
    self::$fields["Followers"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["Followers"]["4"] = "timestamp";
    self::$fields["Followers"]["5"] = "PBString";
    $this->values["5"] = "";
    self::$fieldNames["Followers"]["5"] = "profile_picture_url";
    self::$fields["Followers"]["6"] = "PBBool";
    $this->values["6"] = "";
    self::$fieldNames["Followers"]["6"] = "isFollower";
    self::$fields["Followers"]["7"] = "PBBool";
    $this->values["7"] = "";
    self::$fieldNames["Followers"]["7"] = "isFollowing";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function username()
  {
    return $this->_get_value("2");
  }
  function set_username($value)
  {
    return $this->_set_value("2", $value);
  }
  function user_fullname()
  {
    return $this->_get_value("3");
  }
  function set_user_fullname($value)
  {
    return $this->_set_value("3", $value);
  }
  function timestamp()
  {
    return $this->_get_value("4");
  }
  function set_timestamp($value)
  {
    return $this->_set_value("4", $value);
  }
  function profile_picture_url()
  {
    return $this->_get_value("5");
  }
  function set_profile_picture_url($value)
  {
    return $this->_set_value("5", $value);
  }
  function isFollower()
  {
    return $this->_get_value("6");
  }
  function set_isFollower($value)
  {
    return $this->_set_value("6", $value);
  }
  function isFollowing()
  {
    return $this->_get_value("7");
  }
  function set_isFollowing($value)
  {
    return $this->_set_value("7", $value);
  }
}
class FollowerGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK");
   }
}
class FollowerGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FollowerGetReply"]["1"] = "FollowerGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["FollowerGetReply"]["1"] = "error_no";
    self::$fields["FollowerGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["FollowerGetReply"]["2"] = "error_msg";
    self::$fields["FollowerGetReply"]["3"] = "Followers";
    $this->values["3"] = array();
    self::$fieldNames["FollowerGetReply"]["3"] = "followers";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function followers($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_followers()
  {
    return $this->_add_arr_value("3");
  }
  function set_followers($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_followerss($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_followers()
  {
    $this->_remove_last_arr_value("3");
  }
  function followerss_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_followerss()
  {
    return $this->_get_value("3");
  }
}
class FollowingGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FollowingGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FollowingGetRequest"]["1"] = "target_uid";
    self::$fields["FollowingGetRequest"]["2"] = "PBInt";
    $this->values["2"] = "";
    self::$fieldNames["FollowingGetRequest"]["2"] = "before_timestamp";
    self::$fields["FollowingGetRequest"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["FollowingGetRequest"]["3"] = "num";
    self::$fields["FollowingGetRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["FollowingGetRequest"]["4"] = "uid";
  }
  function target_uid()
  {
    return $this->_get_value("1");
  }
  function set_target_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function before_timestamp()
  {
    return $this->_get_value("2");
  }
  function set_before_timestamp($value)
  {
    return $this->_set_value("2", $value);
  }
  function num()
  {
    return $this->_get_value("3");
  }
  function set_num($value)
  {
    return $this->_set_value("3", $value);
  }
  function uid()
  {
    return $this->_get_value("4");
  }
  function set_uid($value)
  {
    return $this->_set_value("4", $value);
  }
}
class Following extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["Following"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["Following"]["1"] = "uid";
    self::$fields["Following"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["Following"]["2"] = "username";
    self::$fields["Following"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["Following"]["3"] = "user_fullname";
    self::$fields["Following"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["Following"]["4"] = "timestamp";
    self::$fields["Following"]["5"] = "PBString";
    $this->values["5"] = "";
    self::$fieldNames["Following"]["5"] = "profile_picture_url";
    self::$fields["Following"]["6"] = "PBBool";
    $this->values["6"] = "";
    self::$fieldNames["Following"]["6"] = "isFollower";
    self::$fields["Following"]["7"] = "PBBool";
    $this->values["7"] = "";
    self::$fieldNames["Following"]["7"] = "isFollowing";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function username()
  {
    return $this->_get_value("2");
  }
  function set_username($value)
  {
    return $this->_set_value("2", $value);
  }
  function user_fullname()
  {
    return $this->_get_value("3");
  }
  function set_user_fullname($value)
  {
    return $this->_set_value("3", $value);
  }
  function timestamp()
  {
    return $this->_get_value("4");
  }
  function set_timestamp($value)
  {
    return $this->_set_value("4", $value);
  }
  function profile_picture_url()
  {
    return $this->_get_value("5");
  }
  function set_profile_picture_url($value)
  {
    return $this->_set_value("5", $value);
  }
  function isFollower()
  {
    return $this->_get_value("6");
  }
  function set_isFollower($value)
  {
    return $this->_set_value("6", $value);
  }
  function isFollowing()
  {
    return $this->_get_value("7");
  }
  function set_isFollowing($value)
  {
    return $this->_set_value("7", $value);
  }
}
class FollowingGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK");
   }
}
class FollowingGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FollowingGetReply"]["1"] = "FollowingGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["FollowingGetReply"]["1"] = "error_no";
    self::$fields["FollowingGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["FollowingGetReply"]["2"] = "error_msg";
    self::$fields["FollowingGetReply"]["3"] = "Following";
    $this->values["3"] = array();
    self::$fieldNames["FollowingGetReply"]["3"] = "following";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function following($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_following()
  {
    return $this->_add_arr_value("3");
  }
  function set_following($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_followings($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_following()
  {
    $this->_remove_last_arr_value("3");
  }
  function followings_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_followings()
  {
    return $this->_get_value("3");
  }
}
class GetUserByFacebookIdRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["GetUserByFacebookIdRequest"]["1"] = "PBString";
    $this->values["1"] = array();
    self::$fieldNames["GetUserByFacebookIdRequest"]["1"] = "facebookId";
  }
  function facebookId($offset)
  {
    $v = $this->_get_arr_value("1", $offset);
    return $v->get_value();
  }
  function append_facebookId($value)
  {
    $v = $this->_add_arr_value("1");
    $v->set_value($value);
  }
  function set_facebookId($index, $value)
  {
    $v = new self::$fields["GetUserByFacebookIdRequest"]["1"]();
    $v->set_value($value);
    $this->_set_arr_value("1", $index, $v);
  }
  function remove_last_facebookId()
  {
    $this->_remove_last_arr_value("1");
  }
  function facebookIds_size()
  {
    return $this->_get_arr_size("1");
  }
  function get_facebookIds()
  {
    return $this->_get_value("1");
  }
}
class GetUserByFacebookIdReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK");
   }
}
class GetUserByFacebookIdReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["GetUserByFacebookIdReply"]["1"] = "GetUserByFacebookIdReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["GetUserByFacebookIdReply"]["1"] = "error_no";
    self::$fields["GetUserByFacebookIdReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["GetUserByFacebookIdReply"]["2"] = "error_msg";
    self::$fields["GetUserByFacebookIdReply"]["3"] = "ProfileLite";
    $this->values["3"] = array();
    self::$fieldNames["GetUserByFacebookIdReply"]["3"] = "user";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function user($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_user()
  {
    return $this->_add_arr_value("3");
  }
  function set_user($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_users($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_user()
  {
    $this->_remove_last_arr_value("3");
  }
  function users_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_users()
  {
    return $this->_get_value("3");
  }
}
class ResendActivationCodeRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ResendActivationCodeRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["ResendActivationCodeRequest"]["1"] = "uid";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
}
class ResendActivationCodeReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const UID_INV  = 4;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "UID_INV");
   }
}
class ResendActivationCodeReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["ResendActivationCodeReply"]["1"] = "ResendActivationCodeReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["ResendActivationCodeReply"]["1"] = "error_no";
    self::$fields["ResendActivationCodeReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["ResendActivationCodeReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SessionCheckRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SessionCheckRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["SessionCheckRequest"]["1"] = "uid";
    self::$fields["SessionCheckRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SessionCheckRequest"]["2"] = "session_key";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SessionCheckReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL");
   }
}
class SessionCheckReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SessionCheckReply"]["1"] = "SessionCheckReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SessionCheckReply"]["1"] = "error_no";
    self::$fields["SessionCheckReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SessionCheckReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SuggestedUserGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SuggestedUserGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["SuggestedUserGetRequest"]["1"] = "uid";
    self::$fields["SuggestedUserGetRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SuggestedUserGetRequest"]["2"] = "session_key";
    self::$fields["SuggestedUserGetRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["SuggestedUserGetRequest"]["3"] = "target_uid";
    self::$fields["SuggestedUserGetRequest"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["SuggestedUserGetRequest"]["4"] = "num_results";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function target_uid()
  {
    return $this->_get_value("3");
  }
  function set_target_uid($value)
  {
    return $this->_set_value("3", $value);
  }
  function num_results()
  {
    return $this->_get_value("4");
  }
  function set_num_results($value)
  {
    return $this->_set_value("4", $value);
  }
}
class SuggestedUser extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SuggestedUser"]["1"] = "ProfileLite";
    $this->values["1"] = "";
    self::$fieldNames["SuggestedUser"]["1"] = "user";
    self::$fields["SuggestedUser"]["2"] = "PBInt";
    $this->values["2"] = "";
    self::$fieldNames["SuggestedUser"]["2"] = "common_following";
  }
  function user()
  {
    return $this->_get_value("1");
  }
  function set_user($value)
  {
    return $this->_set_value("1", $value);
  }
  function common_following()
  {
    return $this->_get_value("2");
  }
  function set_common_following($value)
  {
    return $this->_set_value("2", $value);
  }
}
class SuggestedUserGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 1;
  const EXISTS  = 2;
  const NOT_EXISTS  = 3;
  const FAIL  = 4;
  const FAIL_AUTH  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			1 => "SUCCESS",
			2 => "EXISTS",
			3 => "NOT_EXISTS",
			4 => "FAIL",
			5 => "FAIL_AUTH");
   }
}
class SuggestedUserGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SuggestedUserGetReply"]["1"] = "SuggestedUserGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SuggestedUserGetReply"]["1"] = "error_no";
    self::$fields["SuggestedUserGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SuggestedUserGetReply"]["2"] = "error_msg";
    self::$fields["SuggestedUserGetReply"]["3"] = "SuggestedUser";
    $this->values["3"] = array();
    self::$fieldNames["SuggestedUserGetReply"]["3"] = "result";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function result($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_result()
  {
    return $this->_add_arr_value("3");
  }
  function set_result($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_results($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_result()
  {
    $this->_remove_last_arr_value("3");
  }
  function results_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_results()
  {
    return $this->_get_value("3");
  }
}
class FinancialTransactionError extends PBEnum
{
  const OK  = 0;
  const FAILED  = 1;
  const PENDING  = 2;
  const FAILED_SERVICE_NOT_EXIST  = 3;
  const FAILED_NOT_ENOUGH_BALANCE  = 4;
  const FAILED_ACCOUNT_NOT_EXIST  = 5;
  const FAILED_CREDIT_ACCOUNT_NOT_EXIST  = 6;
  const FAILED_DEBIT_ACCOUNT_NOT_EXIST  = 7;
  const FAILED_MALFORMED_REQUEST  = 8;
  const FAILED_ACCOUNT_NOT_AVAILABLE  = 9;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "OK",
			1 => "FAILED",
			2 => "PENDING",
			3 => "FAILED_SERVICE_NOT_EXIST",
			4 => "FAILED_NOT_ENOUGH_BALANCE",
			5 => "FAILED_ACCOUNT_NOT_EXIST",
			6 => "FAILED_CREDIT_ACCOUNT_NOT_EXIST",
			7 => "FAILED_DEBIT_ACCOUNT_NOT_EXIST",
			8 => "FAILED_MALFORMED_REQUEST",
			9 => "FAILED_ACCOUNT_NOT_AVAILABLE");
   }
}
class AccountStatus extends PBEnum
{
  const ACTIVE  = 0;
  const INACTIVE  = 1;
  const BLOCK  = 2;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "ACTIVE",
			1 => "INACTIVE",
			2 => "BLOCK");
   }
}
class FeeType extends PBEnum
{
  const FUND_TRANSFER  = 0;
  const SVCS_SUBCRIPTION  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "FUND_TRANSFER",
			1 => "SVCS_SUBCRIPTION");
   }
}
class CashAccount extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["CashAccount"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["CashAccount"]["1"] = "account_number";
    self::$fields["CashAccount"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["CashAccount"]["4"] = "uid";
    self::$fields["CashAccount"]["5"] = "MoneyUnit";
    $this->values["5"] = "";
    self::$fieldNames["CashAccount"]["5"] = "unit";
    self::$fields["CashAccount"]["6"] = "PB32Bit";
    $this->values["6"] = "";
    self::$fieldNames["CashAccount"]["6"] = "balance";
    self::$fields["CashAccount"]["7"] = "PB32Bit";
    $this->values["7"] = "";
    self::$fieldNames["CashAccount"]["7"] = "avl_balance";
    self::$fields["CashAccount"]["8"] = "AccountStatus";
    $this->values["8"] = "";
    self::$fieldNames["CashAccount"]["8"] = "status";
  }
  function account_number()
  {
    return $this->_get_value("1");
  }
  function set_account_number($value)
  {
    return $this->_set_value("1", $value);
  }
  function uid()
  {
    return $this->_get_value("4");
  }
  function set_uid($value)
  {
    return $this->_set_value("4", $value);
  }
  function unit()
  {
    return $this->_get_value("5");
  }
  function set_unit($value)
  {
    return $this->_set_value("5", $value);
  }
  function unit_string()
  {
    return $this->values["5"]->get_description();
  }
  function balance()
  {
    return $this->_get_value("6");
  }
  function set_balance($value)
  {
    return $this->_set_value("6", $value);
  }
  function avl_balance()
  {
    return $this->_get_value("7");
  }
  function set_avl_balance($value)
  {
    return $this->_set_value("7", $value);
  }
  function status()
  {
    return $this->_get_value("8");
  }
  function set_status($value)
  {
    return $this->_set_value("8", $value);
  }
  function status_string()
  {
    return $this->values["8"]->get_description();
  }
}
class GameAccount extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["GameAccount"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["GameAccount"]["1"] = "account_number";
    self::$fields["GameAccount"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["GameAccount"]["4"] = "uid";
    self::$fields["GameAccount"]["5"] = "PBString";
    $this->values["5"] = "";
    self::$fieldNames["GameAccount"]["5"] = "game_id";
    self::$fields["GameAccount"]["6"] = "MoneyUnit";
    $this->values["6"] = "";
    self::$fieldNames["GameAccount"]["6"] = "unit";
    self::$fields["GameAccount"]["7"] = "PB32Bit";
    $this->values["7"] = "";
    self::$fieldNames["GameAccount"]["7"] = "balance";
    self::$fields["GameAccount"]["8"] = "PB32Bit";
    $this->values["8"] = "";
    self::$fieldNames["GameAccount"]["8"] = "avl_balance";
    self::$fields["GameAccount"]["9"] = "AccountStatus";
    $this->values["9"] = "";
    self::$fieldNames["GameAccount"]["9"] = "status";
  }
  function account_number()
  {
    return $this->_get_value("1");
  }
  function set_account_number($value)
  {
    return $this->_set_value("1", $value);
  }
  function uid()
  {
    return $this->_get_value("4");
  }
  function set_uid($value)
  {
    return $this->_set_value("4", $value);
  }
  function game_id()
  {
    return $this->_get_value("5");
  }
  function set_game_id($value)
  {
    return $this->_set_value("5", $value);
  }
  function unit()
  {
    return $this->_get_value("6");
  }
  function set_unit($value)
  {
    return $this->_set_value("6", $value);
  }
  function unit_string()
  {
    return $this->values["6"]->get_description();
  }
  function balance()
  {
    return $this->_get_value("7");
  }
  function set_balance($value)
  {
    return $this->_set_value("7", $value);
  }
  function avl_balance()
  {
    return $this->_get_value("8");
  }
  function set_avl_balance($value)
  {
    return $this->_set_value("8", $value);
  }
  function status()
  {
    return $this->_get_value("9");
  }
  function set_status($value)
  {
    return $this->_set_value("9", $value);
  }
  function status_string()
  {
    return $this->values["9"]->get_description();
  }
}
class FeeAccount extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FeeAccount"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FeeAccount"]["1"] = "account_number";
    self::$fields["FeeAccount"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["FeeAccount"]["2"] = "fee_description";
    self::$fields["FeeAccount"]["3"] = "FeeType";
    $this->values["3"] = "";
    self::$fieldNames["FeeAccount"]["3"] = "fee_type";
    self::$fields["FeeAccount"]["4"] = "PB32Bit";
    $this->values["4"] = "";
    self::$fieldNames["FeeAccount"]["4"] = "balance";
    self::$fields["FeeAccount"]["5"] = "AccountStatus";
    $this->values["5"] = "";
    self::$fieldNames["FeeAccount"]["5"] = "status";
  }
  function account_number()
  {
    return $this->_get_value("1");
  }
  function set_account_number($value)
  {
    return $this->_set_value("1", $value);
  }
  function fee_description()
  {
    return $this->_get_value("2");
  }
  function set_fee_description($value)
  {
    return $this->_set_value("2", $value);
  }
  function fee_type()
  {
    return $this->_get_value("3");
  }
  function set_fee_type($value)
  {
    return $this->_set_value("3", $value);
  }
  function fee_type_string()
  {
    return $this->values["3"]->get_description();
  }
  function balance()
  {
    return $this->_get_value("4");
  }
  function set_balance($value)
  {
    return $this->_set_value("4", $value);
  }
  function status()
  {
    return $this->_get_value("5");
  }
  function set_status($value)
  {
    return $this->_set_value("5", $value);
  }
  function status_string()
  {
    return $this->values["5"]->get_description();
  }
}
class Account extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["Account"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["Account"]["1"] = "account_number";
    self::$fields["Account"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["Account"]["2"] = "uid";
    self::$fields["Account"]["3"] = "PB32Bit";
    $this->values["3"] = "";
    self::$fieldNames["Account"]["3"] = "balance";
    self::$fields["Account"]["4"] = "PB32Bit";
    $this->values["4"] = "";
    self::$fieldNames["Account"]["4"] = "avl_balance";
    self::$fields["Account"]["5"] = "AccountStatus";
    $this->values["5"] = "";
    self::$fieldNames["Account"]["5"] = "status";
  }
  function account_number()
  {
    return $this->_get_value("1");
  }
  function set_account_number($value)
  {
    return $this->_set_value("1", $value);
  }
  function uid()
  {
    return $this->_get_value("2");
  }
  function set_uid($value)
  {
    return $this->_set_value("2", $value);
  }
  function balance()
  {
    return $this->_get_value("3");
  }
  function set_balance($value)
  {
    return $this->_set_value("3", $value);
  }
  function avl_balance()
  {
    return $this->_get_value("4");
  }
  function set_avl_balance($value)
  {
    return $this->_set_value("4", $value);
  }
  function status()
  {
    return $this->_get_value("5");
  }
  function set_status($value)
  {
    return $this->_set_value("5", $value);
  }
  function status_string()
  {
    return $this->values["5"]->get_description();
  }
}
class Telco_Code extends PBEnum
{
  const VIETTEL  = 0;
  const VINAPHONE  = 1;
  const MOBIPHONE  = 2;
  const GATE  = 3;
  const VCOIN  = 4;
  const MEGACARD  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "VIETTEL",
			1 => "VINAPHONE",
			2 => "MOBIPHONE",
			3 => "GATE",
			4 => "VCOIN",
			5 => "MEGACARD");
   }
}
class CardInfo extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["CardInfo"]["1"] = "Telco_Code";
    $this->values["1"] = "";
    self::$fieldNames["CardInfo"]["1"] = "telco_code";
  }
  function telco_code()
  {
    return $this->_get_value("1");
  }
  function set_telco_code($value)
  {
    return $this->_set_value("1", $value);
  }
  function telco_code_string()
  {
    return $this->values["1"]->get_description();
  }
}
class SMSInfo extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SMSInfo"]["1"] = "Telco_Code";
    $this->values["1"] = "";
    self::$fieldNames["SMSInfo"]["1"] = "telco_code";
  }
  function telco_code()
  {
    return $this->_get_value("1");
  }
  function set_telco_code($value)
  {
    return $this->_set_value("1", $value);
  }
  function telco_code_string()
  {
    return $this->values["1"]->get_description();
  }
}
class TopupInfo_TopUpType extends PBEnum
{
  const SMS  = 0;
  const CARD  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SMS",
			1 => "CARD");
   }
}
class TopupInfo extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["TopupInfo"]["1"] = "TopupInfo_TopUpType";
    $this->values["1"] = "";
    self::$fieldNames["TopupInfo"]["1"] = "type";
    self::$fields["TopupInfo"]["2"] = "CardInfo";
    $this->values["2"] = "";
    self::$fieldNames["TopupInfo"]["2"] = "card";
    self::$fields["TopupInfo"]["3"] = "SMSInfo";
    $this->values["3"] = "";
    self::$fieldNames["TopupInfo"]["3"] = "sms";
  }
  function type()
  {
    return $this->_get_value("1");
  }
  function set_type($value)
  {
    return $this->_set_value("1", $value);
  }
  function type_string()
  {
    return $this->values["1"]->get_description();
  }
  function card()
  {
    return $this->_get_value("2");
  }
  function set_card($value)
  {
    return $this->_set_value("2", $value);
  }
  function sms()
  {
    return $this->_get_value("3");
  }
  function set_sms($value)
  {
    return $this->_set_value("3", $value);
  }
}
class FinancialTransactionType extends PBEnum
{
  const TOPUP  = 0;
  const TRANSFER_FUND  = 1;
  const PURCHASE_SERVICE  = 2;
  const REFUND  = 3;
  const CHARGE_FEE  = 4;
  const GET_ACCOUNT  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "TOPUP",
			1 => "TRANSFER_FUND",
			2 => "PURCHASE_SERVICE",
			3 => "REFUND",
			4 => "CHARGE_FEE",
			5 => "GET_ACCOUNT");
   }
}
class FinancialTransactionRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FinancialTransactionRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["1"] = "transaction_id";
    self::$fields["FinancialTransactionRequest"]["2"] = "FinancialTransactionType";
    $this->values["2"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["2"] = "transaction_type";
    self::$fields["FinancialTransactionRequest"]["3"] = "Account";
    $this->values["3"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["3"] = "credit_account";
    self::$fields["FinancialTransactionRequest"]["4"] = "Account";
    $this->values["4"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["4"] = "debit_account";
    self::$fields["FinancialTransactionRequest"]["5"] = "PB32Bit";
    $this->values["5"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["5"] = "amount";
    self::$fields["FinancialTransactionRequest"]["6"] = "PB32Bit";
    $this->values["6"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["6"] = "fee_amount";
    self::$fields["FinancialTransactionRequest"]["7"] = "Account";
    $this->values["7"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["7"] = "fee_account";
    self::$fields["FinancialTransactionRequest"]["8"] = "PBInt";
    $this->values["8"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["8"] = "timestamp";
    self::$fields["FinancialTransactionRequest"]["9"] = "TopupInfo";
    $this->values["9"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["9"] = "topup_info";
    self::$fields["FinancialTransactionRequest"]["10"] = "PBString";
    $this->values["10"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["10"] = "uid";
    self::$fields["FinancialTransactionRequest"]["11"] = "PBString";
    $this->values["11"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["11"] = "pkg_id";
    self::$fields["FinancialTransactionRequest"]["12"] = "PBString";
    $this->values["12"] = "";
    self::$fieldNames["FinancialTransactionRequest"]["12"] = "mobile_number";
  }
  function transaction_id()
  {
    return $this->_get_value("1");
  }
  function set_transaction_id($value)
  {
    return $this->_set_value("1", $value);
  }
  function transaction_type()
  {
    return $this->_get_value("2");
  }
  function set_transaction_type($value)
  {
    return $this->_set_value("2", $value);
  }
  function transaction_type_string()
  {
    return $this->values["2"]->get_description();
  }
  function credit_account()
  {
    return $this->_get_value("3");
  }
  function set_credit_account($value)
  {
    return $this->_set_value("3", $value);
  }
  function debit_account()
  {
    return $this->_get_value("4");
  }
  function set_debit_account($value)
  {
    return $this->_set_value("4", $value);
  }
  function amount()
  {
    return $this->_get_value("5");
  }
  function set_amount($value)
  {
    return $this->_set_value("5", $value);
  }
  function fee_amount()
  {
    return $this->_get_value("6");
  }
  function set_fee_amount($value)
  {
    return $this->_set_value("6", $value);
  }
  function fee_account()
  {
    return $this->_get_value("7");
  }
  function set_fee_account($value)
  {
    return $this->_set_value("7", $value);
  }
  function timestamp()
  {
    return $this->_get_value("8");
  }
  function set_timestamp($value)
  {
    return $this->_set_value("8", $value);
  }
  function topup_info()
  {
    return $this->_get_value("9");
  }
  function set_topup_info($value)
  {
    return $this->_set_value("9", $value);
  }
  function uid()
  {
    return $this->_get_value("10");
  }
  function set_uid($value)
  {
    return $this->_set_value("10", $value);
  }
  function pkg_id()
  {
    return $this->_get_value("11");
  }
  function set_pkg_id($value)
  {
    return $this->_set_value("11", $value);
  }
  function mobile_number()
  {
    return $this->_get_value("12");
  }
  function set_mobile_number($value)
  {
    return $this->_set_value("12", $value);
  }
}
class FinancialTransactionReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["FinancialTransactionReply"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["FinancialTransactionReply"]["1"] = "transaction_id";
    self::$fields["FinancialTransactionReply"]["2"] = "FinancialTransactionError";
    $this->values["2"] = "";
    self::$fieldNames["FinancialTransactionReply"]["2"] = "error_no";
    self::$fields["FinancialTransactionReply"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["FinancialTransactionReply"]["3"] = "error_msg";
    self::$fields["FinancialTransactionReply"]["4"] = "Account";
    $this->values["4"] = "";
    self::$fieldNames["FinancialTransactionReply"]["4"] = "account_info";
    self::$fields["FinancialTransactionReply"]["5"] = "PBString";
    $this->values["5"] = "";
    self::$fieldNames["FinancialTransactionReply"]["5"] = "ticket_id";
  }
  function transaction_id()
  {
    return $this->_get_value("1");
  }
  function set_transaction_id($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no()
  {
    return $this->_get_value("2");
  }
  function set_error_no($value)
  {
    return $this->_set_value("2", $value);
  }
  function error_no_string()
  {
    return $this->values["2"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("3");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("3", $value);
  }
  function account_info()
  {
    return $this->_get_value("4");
  }
  function set_account_info($value)
  {
    return $this->_set_value("4", $value);
  }
  function ticket_id()
  {
    return $this->_get_value("5");
  }
  function set_ticket_id($value)
  {
    return $this->_set_value("5", $value);
  }
}
class UserTicketRequest_Action extends PBEnum
{
  const LIST_TICKET  = 0;
  const DETAIL_TICKET  = 1;
  const CANCEL_TICKET  = 2;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "LIST_TICKET",
			1 => "DETAIL_TICKET",
			2 => "CANCEL_TICKET");
   }
}
class UserTicketRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserTicketRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["UserTicketRequest"]["1"] = "uid";
    self::$fields["UserTicketRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserTicketRequest"]["2"] = "session_key";
    self::$fields["UserTicketRequest"]["3"] = "UserTicketRequest_Action";
    $this->values["3"] = "";
    self::$fieldNames["UserTicketRequest"]["3"] = "action";
    self::$fields["UserTicketRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["UserTicketRequest"]["4"] = "ticket_id";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function action()
  {
    return $this->_get_value("3");
  }
  function set_action($value)
  {
    return $this->_set_value("3", $value);
  }
  function action_string()
  {
    return $this->values["3"]->get_description();
  }
  function ticket_id()
  {
    return $this->_get_value("4");
  }
  function set_ticket_id($value)
  {
    return $this->_set_value("4", $value);
  }
}
class UserTicketReply_ErrorNo extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_AUTH  = 2;
  const NOT_EXIST  = 3;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_AUTH",
			3 => "NOT_EXIST");
   }
}
class UserTicketReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserTicketReply"]["1"] = "UserTicketReply_ErrorNo";
    $this->values["1"] = "";
    self::$fieldNames["UserTicketReply"]["1"] = "error_no";
    self::$fields["UserTicketReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserTicketReply"]["2"] = "error_msg";
    self::$fields["UserTicketReply"]["3"] = "UserServiceTicket";
    $this->values["3"] = array();
    self::$fieldNames["UserTicketReply"]["3"] = "ticket";
    self::$fields["UserTicketReply"]["4"] = "UserServiceTicket";
    $this->values["4"] = "";
    self::$fieldNames["UserTicketReply"]["4"] = "details";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function ticket($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_ticket()
  {
    return $this->_add_arr_value("3");
  }
  function set_ticket($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_tickets($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_ticket()
  {
    $this->_remove_last_arr_value("3");
  }
  function tickets_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_tickets()
  {
    return $this->_get_value("3");
  }
  function details()
  {
    return $this->_get_value("4");
  }
  function set_details($value)
  {
    return $this->_set_value("4", $value);
  }
}
class EntertainmentAreaManagementRequest_Action extends PBEnum
{
  const GET_AREA  = 0;
  const FOLLOW  = 1;
  const UNFOLLOW  = 2;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "GET_AREA",
			1 => "FOLLOW",
			2 => "UNFOLLOW");
   }
}
class EntertainmentAreaManagementRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["EntertainmentAreaManagementRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["EntertainmentAreaManagementRequest"]["1"] = "uid";
    self::$fields["EntertainmentAreaManagementRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["EntertainmentAreaManagementRequest"]["2"] = "session_key";
    self::$fields["EntertainmentAreaManagementRequest"]["3"] = "EntertainmentAreaManagementRequest_Action";
    $this->values["3"] = "";
    self::$fieldNames["EntertainmentAreaManagementRequest"]["3"] = "action";
    self::$fields["EntertainmentAreaManagementRequest"]["4"] = "PBString";
    $this->values["4"] = array();
    self::$fieldNames["EntertainmentAreaManagementRequest"]["4"] = "target_id";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function action()
  {
    return $this->_get_value("3");
  }
  function set_action($value)
  {
    return $this->_set_value("3", $value);
  }
  function action_string()
  {
    return $this->values["3"]->get_description();
  }
  function target_id($offset)
  {
    $v = $this->_get_arr_value("4", $offset);
    return $v->get_value();
  }
  function append_target_id($value)
  {
    $v = $this->_add_arr_value("4");
    $v->set_value($value);
  }
  function set_target_id($index, $value)
  {
    $v = new self::$fields["EntertainmentAreaManagementRequest"]["4"]();
    $v->set_value($value);
    $this->_set_arr_value("4", $index, $v);
  }
  function remove_last_target_id()
  {
    $this->_remove_last_arr_value("4");
  }
  function target_ids_size()
  {
    return $this->_get_arr_size("4");
  }
  function get_target_ids()
  {
    return $this->_get_value("4");
  }
}
class Area extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["Area"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["Area"]["1"] = "title";
    self::$fields["Area"]["2"] = "ProfileLite";
    $this->values["2"] = array();
    self::$fieldNames["Area"]["2"] = "boss";
  }
  function title()
  {
    return $this->_get_value("1");
  }
  function set_title($value)
  {
    return $this->_set_value("1", $value);
  }
  function boss($offset)
  {
    return $this->_get_arr_value("2", $offset);
  }
  function add_boss()
  {
    return $this->_add_arr_value("2");
  }
  function set_boss($index, $value)
  {
    $this->_set_arr_value("2", $index, $value);
  }
  function set_all_bosss($values)
  {
    return $this->_set_arr_values("2", $values);
  }
  function remove_last_boss()
  {
    $this->_remove_last_arr_value("2");
  }
  function bosss_size()
  {
    return $this->_get_arr_size("2");
  }
  function get_bosss()
  {
    return $this->_get_value("2");
  }
}
class EntertainmentAreaManagementReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH");
   }
}
class EntertainmentAreaManagementReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["EntertainmentAreaManagementReply"]["1"] = "EntertainmentAreaManagementReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["EntertainmentAreaManagementReply"]["1"] = "error_no";
    self::$fields["EntertainmentAreaManagementReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["EntertainmentAreaManagementReply"]["2"] = "error_msg";
    self::$fields["EntertainmentAreaManagementReply"]["3"] = "Area";
    $this->values["3"] = array();
    self::$fieldNames["EntertainmentAreaManagementReply"]["3"] = "area";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function area($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_area()
  {
    return $this->_add_arr_value("3");
  }
  function set_area($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_areas($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_area()
  {
    $this->_remove_last_arr_value("3");
  }
  function areas_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_areas()
  {
    return $this->_get_value("3");
  }
}
class PeopleSameInterestRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PeopleSameInterestRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["PeopleSameInterestRequest"]["1"] = "uid";
    self::$fields["PeopleSameInterestRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PeopleSameInterestRequest"]["2"] = "session_key";
    self::$fields["PeopleSameInterestRequest"]["4"] = "PBString";
    $this->values["4"] = "";
    self::$fieldNames["PeopleSameInterestRequest"]["4"] = "target_uid";
    self::$fields["PeopleSameInterestRequest"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["PeopleSameInterestRequest"]["3"] = "num_results";
    self::$fields["PeopleSameInterestRequest"]["5"] = "PBBool";
    $this->values["5"] = "";
    self::$fieldNames["PeopleSameInterestRequest"]["5"] = "refresh_list";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function target_uid()
  {
    return $this->_get_value("4");
  }
  function set_target_uid($value)
  {
    return $this->_set_value("4", $value);
  }
  function num_results()
  {
    return $this->_get_value("3");
  }
  function set_num_results($value)
  {
    return $this->_set_value("3", $value);
  }
  function refresh_list()
  {
    return $this->_get_value("5");
  }
  function set_refresh_list($value)
  {
    return $this->_set_value("5", $value);
  }
}
class SameInterestUser extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SameInterestUser"]["1"] = "ProfileLite";
    $this->values["1"] = "";
    self::$fieldNames["SameInterestUser"]["1"] = "user";
    self::$fields["SameInterestUser"]["2"] = "PB32Bit";
    $this->values["2"] = "";
    self::$fieldNames["SameInterestUser"]["2"] = "common_percent";
  }
  function user()
  {
    return $this->_get_value("1");
  }
  function set_user($value)
  {
    return $this->_set_value("1", $value);
  }
  function common_percent()
  {
    return $this->_get_value("2");
  }
  function set_common_percent($value)
  {
    return $this->_set_value("2", $value);
  }
}
class PeopleSameInterestReply_ErrorType extends PBEnum
{
  const SUCCESS  = 1;
  const EXISTS  = 2;
  const NOT_EXISTS  = 3;
  const FAIL  = 4;
  const FAIL_AUTH  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			1 => "SUCCESS",
			2 => "EXISTS",
			3 => "NOT_EXISTS",
			4 => "FAIL",
			5 => "FAIL_AUTH");
   }
}
class PeopleSameInterestReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["PeopleSameInterestReply"]["1"] = "PeopleSameInterestReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["PeopleSameInterestReply"]["1"] = "error_no";
    self::$fields["PeopleSameInterestReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["PeopleSameInterestReply"]["2"] = "error_msg";
    self::$fields["PeopleSameInterestReply"]["3"] = "SameInterestUser";
    $this->values["3"] = array();
    self::$fieldNames["PeopleSameInterestReply"]["3"] = "result";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function result($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_result()
  {
    return $this->_add_arr_value("3");
  }
  function set_result($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_results($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_result()
  {
    $this->_remove_last_arr_value("3");
  }
  function results_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_results()
  {
    return $this->_get_value("3");
  }
}
class SubscriptionGetRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SubscriptionGetRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["SubscriptionGetRequest"]["1"] = "uid";
    self::$fields["SubscriptionGetRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SubscriptionGetRequest"]["2"] = "session_key";
    self::$fields["SubscriptionGetRequest"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["SubscriptionGetRequest"]["3"] = "before_timestamp";
    self::$fields["SubscriptionGetRequest"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["SubscriptionGetRequest"]["4"] = "num";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function before_timestamp()
  {
    return $this->_get_value("3");
  }
  function set_before_timestamp($value)
  {
    return $this->_set_value("3", $value);
  }
  function num()
  {
    return $this->_get_value("4");
  }
  function set_num($value)
  {
    return $this->_set_value("4", $value);
  }
}
class SubscriptionGetReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_SYS  = 2;
  const FAIL_NETWORK  = 3;
  const FAIL_AUTH  = 4;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_SYS",
			3 => "FAIL_NETWORK",
			4 => "FAIL_AUTH");
   }
}
class SubscriptionGetReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["SubscriptionGetReply"]["1"] = "SubscriptionGetReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["SubscriptionGetReply"]["1"] = "error_no";
    self::$fields["SubscriptionGetReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["SubscriptionGetReply"]["2"] = "error_msg";
    self::$fields["SubscriptionGetReply"]["3"] = "ItemLite";
    $this->values["3"] = array();
    self::$fieldNames["SubscriptionGetReply"]["3"] = "items";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function items($offset)
  {
    return $this->_get_arr_value("3", $offset);
  }
  function add_items()
  {
    return $this->_add_arr_value("3");
  }
  function set_items($index, $value)
  {
    $this->_set_arr_value("3", $index, $value);
  }
  function set_all_itemss($values)
  {
    return $this->_set_arr_values("3", $values);
  }
  function remove_last_items()
  {
    $this->_remove_last_arr_value("3");
  }
  function itemss_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_itemss()
  {
    return $this->_get_value("3");
  }
}
class OpenGraphActionShareRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["OpenGraphActionShareRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["OpenGraphActionShareRequest"]["1"] = "uid";
    self::$fields["OpenGraphActionShareRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["OpenGraphActionShareRequest"]["2"] = "session_key";
    self::$fields["OpenGraphActionShareRequest"]["3"] = "PBString";
    $this->values["3"] = "";
    self::$fieldNames["OpenGraphActionShareRequest"]["3"] = "content_id";
    self::$fields["OpenGraphActionShareRequest"]["4"] = "OpenGraphShareAction";
    $this->values["4"] = "";
    self::$fieldNames["OpenGraphActionShareRequest"]["4"] = "action";
    self::$fields["OpenGraphActionShareRequest"]["5"] = "SocialChannelType";
    $this->values["5"] = "";
    self::$fieldNames["OpenGraphActionShareRequest"]["5"] = "channel";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function content_id()
  {
    return $this->_get_value("3");
  }
  function set_content_id($value)
  {
    return $this->_set_value("3", $value);
  }
  function action()
  {
    return $this->_get_value("4");
  }
  function set_action($value)
  {
    return $this->_set_value("4", $value);
  }
  function action_string()
  {
    return $this->values["4"]->get_description();
  }
  function channel()
  {
    return $this->_get_value("5");
  }
  function set_channel($value)
  {
    return $this->_set_value("5", $value);
  }
  function channel_string()
  {
    return $this->values["5"]->get_description();
  }
}
class OpenGraphActionShareReply_ErrorNo extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const DUPLICATED  = 2;
  const FAIL_AUTH  = 3;
  const NOT_EXIST  = 4;
  const FACEBOOK_NOT_CONNECTED  = 5;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "DUPLICATED",
			3 => "FAIL_AUTH",
			4 => "NOT_EXIST",
			5 => "FACEBOOK_NOT_CONNECTED");
   }
}
class OpenGraphActionShareReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["OpenGraphActionShareReply"]["1"] = "OpenGraphActionShareReply_ErrorNo";
    $this->values["1"] = "";
    self::$fieldNames["OpenGraphActionShareReply"]["1"] = "error_no";
    self::$fields["OpenGraphActionShareReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["OpenGraphActionShareReply"]["2"] = "error_msg";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
}
class OGPActionShareSettingsRequest_ActionType extends PBEnum
{
  const GET  = 0;
  const SET  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "GET",
			1 => "SET");
   }
}
class OGPActionShareSettingsRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["OGPActionShareSettingsRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["OGPActionShareSettingsRequest"]["1"] = "uid";
    self::$fields["OGPActionShareSettingsRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["OGPActionShareSettingsRequest"]["2"] = "session_key";
    self::$fields["OGPActionShareSettingsRequest"]["3"] = "OpenGraphShareAction";
    $this->values["3"] = array();
    self::$fieldNames["OGPActionShareSettingsRequest"]["3"] = "allowed_action";
    self::$fields["OGPActionShareSettingsRequest"]["4"] = "OGPActionShareSettingsRequest_ActionType";
    $this->values["4"] = "";
    self::$fieldNames["OGPActionShareSettingsRequest"]["4"] = "request_type";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function allowed_action($offset)
  {
    $v = $this->_get_arr_value("3", $offset);
    return $v->get_value();
  }
  function append_allowed_action($value)
  {
    $v = $this->_add_arr_value("3");
    $v->set_value($value);
  }
  function set_allowed_action($index, $value)
  {
    $v = new self::$fields["OGPActionShareSettingsRequest"]["3"]();
    $v->set_value($value);
    $this->_set_arr_value("3", $index, $v);
  }
  function remove_last_allowed_action()
  {
    $this->_remove_last_arr_value("3");
  }
  function allowed_actions_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_allowed_actions()
  {
    return $this->_get_value("3");
  }
  function request_type()
  {
    return $this->_get_value("4");
  }
  function set_request_type($value)
  {
    return $this->_set_value("4", $value);
  }
  function request_type_string()
  {
    return $this->values["4"]->get_description();
  }
}
class OGPActionShareSettingsReply_ErrorNo extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_AUTH  = 2;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_AUTH");
   }
}
class OGPActionShareSettingsReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["OGPActionShareSettingsReply"]["1"] = "OGPActionShareSettingsReply_ErrorNo";
    $this->values["1"] = "";
    self::$fieldNames["OGPActionShareSettingsReply"]["1"] = "error_no";
    self::$fields["OGPActionShareSettingsReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["OGPActionShareSettingsReply"]["2"] = "error_msg";
    self::$fields["OGPActionShareSettingsReply"]["3"] = "OpenGraphShareAction";
    $this->values["3"] = array();
    self::$fieldNames["OGPActionShareSettingsReply"]["3"] = "allowed_action";
    self::$fields["OGPActionShareSettingsReply"]["4"] = "PBBool";
    $this->values["4"] = "";
    self::$fieldNames["OGPActionShareSettingsReply"]["4"] = "new_settings";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function allowed_action($offset)
  {
    $v = $this->_get_arr_value("3", $offset);
    return $v->get_value();
  }
  function append_allowed_action($value)
  {
    $v = $this->_add_arr_value("3");
    $v->set_value($value);
  }
  function set_allowed_action($index, $value)
  {
    $v = new self::$fields["OGPActionShareSettingsReply"]["3"]();
    $v->set_value($value);
    $this->_set_arr_value("3", $index, $v);
  }
  function remove_last_allowed_action()
  {
    $this->_remove_last_arr_value("3");
  }
  function allowed_actions_size()
  {
    return $this->_get_arr_size("3");
  }
  function get_allowed_actions()
  {
    return $this->_get_value("3");
  }
  function new_settings()
  {
    return $this->_get_value("4");
  }
  function set_new_settings($value)
  {
    return $this->_set_value("4", $value);
  }
}
class UserInvitationStatsRequest_ActionType extends PBEnum
{
  const COUNT  = 0;
  const LISTING  = 1;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "COUNT",
			1 => "LISTING");
   }
}
class UserInvitationStatsRequest extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserInvitationStatsRequest"]["1"] = "PBString";
    $this->values["1"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["1"] = "uid";
    self::$fields["UserInvitationStatsRequest"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["2"] = "session_key";
    self::$fields["UserInvitationStatsRequest"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["3"] = "before_timestamp";
    self::$fields["UserInvitationStatsRequest"]["4"] = "PBInt";
    $this->values["4"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["4"] = "after_timestamp";
    self::$fields["UserInvitationStatsRequest"]["6"] = "PBInt";
    $this->values["6"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["6"] = "num";
    self::$fields["UserInvitationStatsRequest"]["5"] = "UserInvitationStatsRequest_ActionType";
    $this->values["5"] = "";
    self::$fieldNames["UserInvitationStatsRequest"]["5"] = "action";
  }
  function uid()
  {
    return $this->_get_value("1");
  }
  function set_uid($value)
  {
    return $this->_set_value("1", $value);
  }
  function session_key()
  {
    return $this->_get_value("2");
  }
  function set_session_key($value)
  {
    return $this->_set_value("2", $value);
  }
  function before_timestamp()
  {
    return $this->_get_value("3");
  }
  function set_before_timestamp($value)
  {
    return $this->_set_value("3", $value);
  }
  function after_timestamp()
  {
    return $this->_get_value("4");
  }
  function set_after_timestamp($value)
  {
    return $this->_set_value("4", $value);
  }
  function num()
  {
    return $this->_get_value("6");
  }
  function set_num($value)
  {
    return $this->_set_value("6", $value);
  }
  function action()
  {
    return $this->_get_value("5");
  }
  function set_action($value)
  {
    return $this->_set_value("5", $value);
  }
  function action_string()
  {
    return $this->values["5"]->get_description();
  }
}
class Invitation extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["Invitation"]["1"] = "ProfileLite";
    $this->values["1"] = "";
    self::$fieldNames["Invitation"]["1"] = "profile";
    self::$fields["Invitation"]["2"] = "PBInt";
    $this->values["2"] = "";
    self::$fieldNames["Invitation"]["2"] = "timestamp";
  }
  function profile()
  {
    return $this->_get_value("1");
  }
  function set_profile($value)
  {
    return $this->_set_value("1", $value);
  }
  function timestamp()
  {
    return $this->_get_value("2");
  }
  function set_timestamp($value)
  {
    return $this->_set_value("2", $value);
  }
}
class UserInvitationStatsReply_ErrorType extends PBEnum
{
  const SUCCESS  = 0;
  const FAIL  = 1;
  const FAIL_AUTH  = 2;

  public function __construct($reader=null)
  {
   	parent::__construct($reader);
 	$this->names = array(
			0 => "SUCCESS",
			1 => "FAIL",
			2 => "FAIL_AUTH");
   }
}
class UserInvitationStatsReply extends PBMessage
{
  var $wired_type = PBMessage::WIRED_LENGTH_DELIMITED;
  public function __construct($reader=null)
  {
    parent::__construct($reader);
    self::$fields["UserInvitationStatsReply"]["1"] = "UserInvitationStatsReply_ErrorType";
    $this->values["1"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["1"] = "error_no";
    self::$fields["UserInvitationStatsReply"]["2"] = "PBString";
    $this->values["2"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["2"] = "error_msg";
    self::$fields["UserInvitationStatsReply"]["3"] = "PBInt";
    $this->values["3"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["3"] = "day_num";
    self::$fields["UserInvitationStatsReply"]["5"] = "PBInt";
    $this->values["5"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["5"] = "week_num";
    self::$fields["UserInvitationStatsReply"]["6"] = "PBInt";
    $this->values["6"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["6"] = "month_num";
    self::$fields["UserInvitationStatsReply"]["7"] = "PBInt";
    $this->values["7"] = "";
    self::$fieldNames["UserInvitationStatsReply"]["7"] = "total";
    self::$fields["UserInvitationStatsReply"]["4"] = "Invitation";
    $this->values["4"] = array();
    self::$fieldNames["UserInvitationStatsReply"]["4"] = "invitation";
  }
  function error_no()
  {
    return $this->_get_value("1");
  }
  function set_error_no($value)
  {
    return $this->_set_value("1", $value);
  }
  function error_no_string()
  {
    return $this->values["1"]->get_description();
  }
  function error_msg()
  {
    return $this->_get_value("2");
  }
  function set_error_msg($value)
  {
    return $this->_set_value("2", $value);
  }
  function day_num()
  {
    return $this->_get_value("3");
  }
  function set_day_num($value)
  {
    return $this->_set_value("3", $value);
  }
  function week_num()
  {
    return $this->_get_value("5");
  }
  function set_week_num($value)
  {
    return $this->_set_value("5", $value);
  }
  function month_num()
  {
    return $this->_get_value("6");
  }
  function set_month_num($value)
  {
    return $this->_set_value("6", $value);
  }
  function total()
  {
    return $this->_get_value("7");
  }
  function set_total($value)
  {
    return $this->_set_value("7", $value);
  }
  function invitation($offset)
  {
    return $this->_get_arr_value("4", $offset);
  }
  function add_invitation()
  {
    return $this->_add_arr_value("4");
  }
  function set_invitation($index, $value)
  {
    $this->_set_arr_value("4", $index, $value);
  }
  function set_all_invitations($values)
  {
    return $this->_set_arr_values("4", $values);
  }
  function remove_last_invitation()
  {
    $this->_remove_last_arr_value("4");
  }
  function invitations_size()
  {
    return $this->_get_arr_size("4");
  }
  function get_invitations()
  {
    return $this->_get_value("4");
  }
}
?>